home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1995 #5 & #6 / Amiga Plus CD - 1995 - No. 5 and 6.iso / tex / mf / inputs / dc / dxileast.mf < prev    next >
Text File  |  1994-04-12  |  29KB  |  732 lines

  1. % This is DXILEAST.MF in text format, as of March 24, 1992
  2. %
  3. % DC fonts Version 1.1 (prerelease of EC fonts)
  4. %
  5. %          [ heavily borrowed from the Computer Modern Roman family of
  6. %            fonts by D. E. Knuth ]
  7. %
  8. % Content:
  9. %
  10. %   accented lowercase italic letters ("eastern part")
  11. %
  12. %   oct"236", oct"240" .. oct"274"
  13. %
  14.  
  15.  
  16. dcchar "Italic letter bar d";
  17. beginchar(oct"236",9u#,asc_height#,0);
  18. italcorr max(1/3x_height#*slant+.5hair#+.5u#,
  19.   h#*slant+.5stem#-2u#) if math_fitting:-.5u# fi;
  20. adjust_fit(0,0); pickup fine.nib;
  21. pos0(hair,0); pos1(vair,90); pos2(curve,180); pos3(vair,270);
  22. x0=x4; x1=x3=.5[x0,x2]; lft x2r=hround(1.5u-.5curve);
  23. x4+.5stem=hround(w-2.5u+.5stem);
  24. top y1r=x_height+oo; bot y3r=-oo; y0=y2=.5[y1,y3];
  25. filldraw stroke super_arc.e(0,1) & pulled_arc.e(1,2)
  26.  & pulled_arc.e(2,3) & super_arc.e(3,0);  % bowl
  27. x5=x0; x7=w; hook_out(5,6,7);  % closing hook
  28. pickup tiny.nib; pos5'(stem,0); pos4(stem,0);
  29. z5'=z5; top y4=h; filldraw stroke z4e--z5'e;  % stem
  30. sloped_serif.l(4,5',a,1/3,jut,serif_drop);  % serif
  31. math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
  32. % the bar
  33.   pos8(bar,90); pos9(bar,90);
  34.   x8=x1; % .5[x1,x4];
  35.   x9=x6;
  36.   y8=y9=.5[y.a2-.5slab,y1+.5vair];
  37.   filldraw stroke z8e--z9e;
  38. penlabels(0,1,2,3,4,5,6,7,8); endchar;
  39.  
  40.  
  41.  
  42. dcchar "Italic letter breve a";
  43. beginchar(oct"240",9u#,x_height#+acc_height#,0);
  44. italcorr 1/3x_height#*slant+.5hair#+.5u#;
  45. adjust_fit(0,0); pickup fine.nib;
  46. pos0(hair,0); pos1(vair,90); pos2(curve,180); pos3(vair,270);
  47. pos4(stem,0); x4=x0; y4+.5stem=vround .98x_height;
  48. x1=x3=.5[x0,x2]; lft x2r=hround(1.5u-.5curve);
  49. rt x4r=hround(w-2.5u+.5stem);
  50. top y1r=x_height+oo; bot y3r=-oo; y0=y2=.5[y1,y3];
  51. filldraw stroke super_arc.e(0,1) & pulled_arc.e(1,2)
  52.  & pulled_arc.e(2,3) & super_arc.e(3,0);  % bowl
  53. x5=x4; x7=w; hook_out(5,6,7);  % closing hook
  54. filldraw circ_stroke z4e--z5e;  % stem
  55. math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
  56. % the accent
  57. lowercase_breve(.5w,0,8,9,10);
  58. penlabels(0,1,2,3,4,5,6,7,8,9,10); endchar;
  59.  
  60. dcchar "Italic letter ogonek a";
  61. beginchar(oct"241",9u#,x_height#,desc_depth#);
  62. italcorr 1/3x_height#*slant+.5hair#+.5u#;
  63. adjust_fit(0,0); pickup fine.nib;
  64. pos0(hair,0); pos1(vair,90); pos2(curve,180); pos3(vair,270);
  65. pos4(stem,0); x4=x0; y4+.5stem=vround .98x_height;
  66. x1=x3=.5[x0,x2]; lft x2r=hround(1.5u-.5curve);
  67. rt x4r=hround(w-2.5u+.5stem);
  68. top y1r=x_height+oo; bot y3r=-oo; y0=y2=.5[y1,y3];
  69. filldraw stroke super_arc.e(0,1) & pulled_arc.e(1,2)
  70.  & pulled_arc.e(2,3) & super_arc.e(3,0);  % bowl
  71. x5=x4; x7=w; hook_out(5,6,7);  % closing hook
  72. filldraw circ_stroke z4e--z5e;  % stem
  73. math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
  74. % the accent
  75. lowercase_ogonek(x6r,0,8,9,10);
  76. penlabels(0,1,2,3,4,5,6,7,8,9,10); endchar;
  77.  
  78. dcchar "Italic letter acute c";
  79. beginchar(oct"242",8u#,x_height#+acc_height#,0);
  80. italcorr if math_fitting:1/3x_height#*slant else:x_height#*slant-u# fi;
  81. adjust_fit(0,0); pickup fine.nib;
  82. pos0(flare,0); pos1(hair,0); pos2(vair,90);
  83. pos3(curve,180); pos4(vair,270); pos5(hair,320);
  84. x2=x4=.5(w+u); rt x1r=max(rt x2,hround(w-u))+eps;
  85. lft x3r=hround(1.5u-.5curve); x5r=good.x(w-eps); x6=x5;
  86. y1=.5[bar_height,x_height]; top y2r=x_height+oo; bulb(2,1,0);  % bulb
  87. bot y4r=-oo; y3=.5[y2,y4]; top y5l=vround .5bar_height; y6=bar_height;
  88. path p; p=z4{right}..z5..z6;
  89. filldraw stroke pulled_arc.e(2,3)
  90.  & pulled_arc.e(3,4)...{direction 1 of p}z5e;  % arc
  91. math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
  92. % the accent
  93. lowercase_acute(0,0,7,8);
  94. penlabels(0,1,2,3,4,5,6,7,8); endchar;
  95.  
  96. dcchar "Italic letter hachek (check) c";
  97. beginchar(oct"243",8u#,x_height#+acc_height#,0);
  98. italcorr if math_fitting:1/3x_height#*slant else:x_height#*slant-u# fi;
  99. adjust_fit(0,0); pickup fine.nib;
  100. pos0(flare,0); pos1(hair,0); pos2(vair,90);
  101. pos3(curve,180); pos4(vair,270); pos5(hair,320);
  102. x2=x4=.5(w+u); rt x1r=max(rt x2,hround(w-u))+eps;
  103. lft x3r=hround(1.5u-.5curve); x5r=good.x(w-eps); x6=x5;
  104. y1=.5[bar_height,x_height]; top y2r=x_height+oo; bulb(2,1,0);  % bulb
  105. bot y4r=-oo; y3=.5[y2,y4]; top y5l=vround .5bar_height; y6=bar_height;
  106. path p; p=z4{right}..z5..z6;
  107. filldraw stroke pulled_arc.e(2,3)
  108.  & pulled_arc.e(3,4)...{direction 1 of p}z5e;  % arc
  109. math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
  110. % the accent
  111. lowercase_hachek(x2,0,7,8,9,10,11);
  112. penlabels(0,1,2,3,4,5,6,7,8,9,10,11); endchar;
  113.  
  114.  
  115. dcchar "Italic letter d";
  116. beginchar(oct"244",9u#,asc_height#,0);
  117. italcorr max(1/3x_height#*slant+.5hair#+.5u#,
  118.   h#*slant+.5stem#-2u#) if math_fitting:-.5u# fi;
  119. adjust_fit(0,0); pickup fine.nib;
  120. pos0(hair,0); pos1(vair,90); pos2(curve,180); pos3(vair,270);
  121. x0=x4; x1=x3=.5[x0,x2]; lft x2r=hround(1.5u-.5curve);
  122. x4+.5stem=hround(w-2.5u+.5stem);
  123. top y1r=x_height+oo; bot y3r=-oo; y0=y2=.5[y1,y3];
  124. filldraw stroke super_arc.e(0,1) & pulled_arc.e(1,2)
  125.  & pulled_arc.e(2,3) & super_arc.e(3,0);  % bowl
  126. x5=x0; x7=w; hook_out(5,6,7);  % closing hook
  127. pickup tiny.nib; pos5'(stem,0); pos4(stem,0);
  128. z5'=z5; top y4=h; filldraw stroke z4e--z5'e;  % stem
  129. sloped_serif.l(4,5',a,1/3,jut,serif_drop);  % serif
  130. math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
  131. % the accent
  132. komma_one := 8;
  133.  x[komma_one]=hround(w+0.5dot_size-0.25u);
  134. y[komma_one]+.5dot_size=h;
  135. comma([komma_one],ee,dot_size,.25u,0.8comma_depth);  % comma with increased jut
  136. penlabels(0,1,2,3,4,5,6,7,8); endchar;
  137.  
  138. dcchar "Italic letter hachek (check) e";
  139. beginchar(oct"245",8u#,x_height#+acc_height#,0);
  140. italcorr max(1/3x_height#*slant,x_height#*slant+.5(.2[hair#,stem#])-u#);
  141. adjust_fit(0,0); pickup fine.nib;
  142. numeric heavy_hair; heavy_hair=hround .2[hair,stem];
  143. pos0(vair,-90); pos1(heavy_hair,0); pos2(vair,90);
  144. pos3(curve,180); pos4(vair,270); pos5(hair,320);
  145. x0=rt x3l; rt x1r=hround(w-1.5u+.5heavy_hair); x2=x4=.5(w+u);
  146. lft x3r=hround(1.5u-.5curve); x5r=good.x(w-eps); x6=x5;
  147. y0=y3=y6=bar_height; y1=.5[y0,y2]; top y2r=x_height+oo; bot y4r=-oo;
  148. top y5l=vround .5bar_height; path p; p=z4{right}..z5..z6;
  149. filldraw stroke z0e{right}...z1e{up}...pulled_arc.e(2,3)
  150.  & pulled_arc.e(3,4)...{direction 1 of p}z5e;  % arc
  151. %the accent
  152. lowercase_hachek(5/6[x3,x2],0,7,8,9,10,11);
  153. math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
  154. penlabels(0,1,2,3,4,5,6,7,8,9,10,11); endchar;
  155.  
  156. dcchar "Italic letter ogonek e";
  157. beginchar(oct"246",8u#,x_height#,desc_depth#);
  158. italcorr max(1/3x_height#*slant,x_height#*slant+.5(.2[hair#,stem#])-u#);
  159. adjust_fit(0,0); pickup fine.nib;
  160. save pp;
  161. path pp;
  162. numeric heavy_hair; heavy_hair=hround .2[hair,stem];
  163. pos0(vair,-90); pos1(heavy_hair,0); pos2(vair,90);
  164. pos3(curve,180); pos4(vair,270); pos5(hair,320);
  165. x0=rt x3l; rt x1r=hround(w-1.5u+.5heavy_hair); x2=x4=.5(w+u);
  166. lft x3r=hround(1.5u-.5curve); x5r=good.x(w-eps); x6=x5;
  167. y0=y3=y6=bar_height; y1=.5[y0,y2]; top y2r=h+oo; bot y4r=-oo;
  168. top y5l=vround .5bar_height; path p; p=z4{right}..z5..z6;
  169. filldraw stroke z0e{right}...z1e{up}...pulled_arc.e(2,3)
  170.  & pulled_arc.e(3,4)...{direction 1 of p}z5e;  % arc
  171. pp=z0r{right}...z1r{up}...pulled_arc.r(2,3)
  172.  & pulled_arc.r(3,4)...{direction 1 of p}z5r;  % arc
  173. %pp=z0{right}...z1{up}...z2l...z3l...z4l...{direction 1 of p}z5l;  % arc
  174. %z10=point 4.6 of pp;
  175. z10=point 6.6 of pp;
  176. %the accent
  177. %lowercase_ogonek(.25[x4,x5],0,7,8,9);
  178. lowercase_ogonek(x10,y10-.2hair,7,8,9);
  179. math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
  180. penlabels(0,1,2,3,4,5,6,7,8,9); endchar;
  181.  
  182.  
  183.  
  184.  
  185. dcchar "Italic letter g";
  186. beginchar(oct"247",8u#,x_height#+acc_height#,desc_depth#);
  187. italcorr x_height#*slant+.5stem#-u#;
  188. adjust_fit(0,0); pickup fine.nib;
  189. pos0(hair,0); pos1(vair,90); pos2(curve,180); pos3(vair,270);
  190. x0=x4; x1=x3=.5[x0,x2]; lft x2r=hround(1.5u-.5curve);
  191. x4+.5stem=hround(w-1.5u+.5stem);
  192. top y1r=x_height+oo; bot y3r=0; y0=y2=.5[y1,y3];
  193. filldraw stroke super_arc.e(0,1) & pulled_arc.e(1,2)
  194.  & pulled_arc.e(2,3) & super_arc.e(3,0);  % bowl
  195. pos4(stem,0); y4+.5stem=vround .98x_height;
  196. pos5(stem,0); x5=x4; y5=-1/3d;
  197. pos6(vair,-90); pos7(hair,-180); pos8(flare,-180);
  198. bot y6r=-d-oo; y8-.5flare=vround -.9d;
  199. lft x8r=hround(2u-.5flare); x6=x1; bulb(6,7,8);  % bulb
  200. filldraw circ_stroke z4e---z5e...{left}z6e;  % stem and arc
  201. %the accent
  202. lowercase_breve(.5w,0,9,10,11);
  203. math_fit(-min(.3x_height#*slant+.5curve#-u#,1.5u#-desc_depth#*slant),
  204.  ic#-1/3x_height#*slant);
  205. penlabels(0,1,2,3,4,5,6,7,8,9,10,11); endchar;
  206.  
  207.  
  208. dcchar "Italic letter acute l";
  209. beginchar(oct"250",4u#,asc_height#+acc_height#,0); l_width#:=4u#;
  210. italcorr max(1/3x_height#*slant+.5hair#+.5u#,
  211.  asc_height#*slant+.5stem#-2u#) if math_fitting:+.5u# fi;
  212. adjust_fit(if monospace:u#,u# else: 0,0 fi); pickup fine.nib;
  213. x2-.5stem=hround(1.5u-.5stem); x4=w; hook_out(2,3,4);  % closing hook
  214. pickup tiny.nib; pos1(stem,0); pos2'(stem,0); z2'=z2;
  215. top y1=asc_height; x1=x2; filldraw stroke z1e--z2e;  % stem
  216. sloped_serif.l(1,2,a,1/3,jut,serif_drop);  % serif
  217. %the accent
  218. uppercase_acute(0,0,5,6);
  219. math_fit(-.5u#,1/3x_height#*slant+.5hair#+u#);
  220. penlabels(1,2,3,4,5,6); endchar;
  221.  
  222. dcchar "Italic letter comma l";
  223. beginchar(oct"251",4u#,asc_height#,0); l_width#:=4u#;
  224. italcorr max(1/3x_height#*slant+.5hair#+.5u#,
  225.  asc_height#*slant+.5stem#-2u#) if math_fitting:+.5u# fi;
  226. adjust_fit(if monospace:u#,u# else: 0,0 fi); pickup fine.nib;
  227. x2-.5stem=hround(1.5u-.5stem); x4=w; hook_out(2,3,4);  % closing hook
  228. pickup tiny.nib; pos1(stem,0); pos2'(stem,0); z2'=z2;
  229. top y1=h; x1=x2; filldraw stroke z1e--z2e;  % stem
  230. sloped_serif.l(1,2,a,1/3,jut,serif_drop);  % serif
  231. %the accent
  232. komma_one := 5;
  233. x[komma_one]=hround(w+0.5dot_size-0.25u);
  234. y[komma_one]+.5dot_size=h;
  235. comma([komma_one],ee,dot_size,.25u,0.8comma_depth);  % comma with increased jut
  236. math_fit(-.5u#,1/3x_height#*slant+.5hair#+u#);
  237. penlabels(1,2,3,4,5,6); endchar;
  238.  
  239. dcchar "Italic letter polish l";
  240. beginchar(oct"252",4u#,asc_height#,0); l_width#:=4u#;
  241. italcorr max(1/3x_height#*slant+.5hair#+.5u#,
  242.  asc_height#*slant+.5stem#-2u#) if math_fitting:+.5u# fi;
  243. adjust_fit(if monospace:u#,u# else: 0,0 fi); pickup fine.nib;
  244. x2-.5stem=hround(1.5u-.5stem); x4=w; hook_out(2,3,4);  % closing hook
  245. pickup tiny.nib; pos1(stem,0); pos2'(stem,0); z2'=z2;
  246. top y1=h; x1=x2; filldraw stroke z1e--z2e;  % stem
  247. sloped_serif.l(1,2,a,1/3,jut,serif_drop);  % serif
  248. %the accent
  249. cross_one :=5;
  250. cross_two :=6;
  251. if unknown l_width:
  252.  l_width:=5u+2serif_fit; fi  % nominal width of `l'
  253. if unknown L_stem:
  254.  L_stem:=cap_serif_fit+max(2u+.5cap_stem,3u); fi  % center of `L' stem
  255. %
  256. pickup crisp.nib;
  257. x[cross_two]-x[cross_one]=max(4u,2.8u+stem);
  258. .5[x[cross_one],x[cross_two]]=x1;
  259. y[cross_one]-.5bar=.2[bar_height,x_height];
  260. y[cross_two]+.5bar=.8[bar_height,x_height];
  261. numeric theta; theta=angle(z[cross_two]-z[cross_one])+90;
  262. pos[cross_one](bar,theta); pos[cross_two](bar,theta);
  263. filldraw stroke z[cross_one]e--z[cross_two]e;  % diagonal
  264. math_fit(-.5u#,1/3x_height#*slant+.5hair#+u#);
  265. penlabels(1,2,3,4,5,6); endchar;
  266.  
  267. dcchar "Italic letter acute n";
  268. beginchar(oct"253",10u#,x_height#+acc_height#,0);
  269. italcorr 1/3x_height#*slant+.5hair#+.5u#;
  270. adjust_fit(0,0); pickup fine.nib;
  271. x0=0; x1=x2; pos2(stem,0); lft x2l=hround(2.5u-.5stem); y2-.5stem=-oo;
  272. if classic_serif:
  273.   top y1=x_height; pos1(stem,0);
  274.   sloped_serif.l(1,2,a,1/3,jut,serif_drop);
  275. else:
  276.   hook_in(0,a,1);  % opening hook
  277. fi
  278. filldraw circ_stroke z2e--z1e;  % left stem
  279. x4+.5stem=hround(w-2.5u+.5stem); x5=x4-.25u; ital_arch(2,3,4);  % arch
  280. x7=w; hook_out(5,6,7)(skewed);  % closing hook
  281. filldraw stroke z4e{down}..{-u,-x_height}z5e;  % right stem
  282. lowercase_acute(1/3(x1r-.5w),0,8,9);
  283. math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#);
  284. penlabels(0,a,1,2,3,4,5,6,7,8,9); endchar;
  285.  
  286.  
  287. dcchar "Italic letter hachek (check) n";
  288. beginchar(oct"254",10u#,x_height#+acc_height#,0);
  289. italcorr 1/3x_height#*slant+.5hair#+.5u#;
  290. adjust_fit(0,0); pickup fine.nib;
  291. x0=0; x1=x2; pos2(stem,0); lft x2l=hround(2.5u-.5stem); y2-.5stem=-oo;
  292. if classic_serif:
  293.   top y1=x_height; pos1(stem,0);
  294.   sloped_serif.l(1,2,a,1/3,jut,serif_drop);
  295. else:
  296.   hook_in(0,a,1);  % opening hook
  297. fi
  298. filldraw circ_stroke z2e--z1e;  % left stem
  299. x4+.5stem=hround(w-2.5u+.5stem); x5=x4-.25u; ital_arch(2,3,4);  % arch
  300. x7=w; hook_out(5,6,7)(skewed);  % closing hook
  301. filldraw stroke z4e{down}..{-u,-x_height}z5e;  % right stem
  302. lowercase_hachek(.5[x1r,x3r],0,8,9,10,11,12);
  303. math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#);
  304. penlabels(0,a,1,2,3,4,5,6,7,8,9,10,11,12); endchar;
  305.  
  306.  
  307. dcchar "Italic letter nj";
  308. beginchar(oct"255",10u#,x_height#,desc_depth#);
  309. italcorr 1/3x_height#*slant+.5hair#+.5u#;
  310. adjust_fit(0,0); pickup fine.nib;
  311. x0=0; x1=x2; pos2(stem,0); lft x2l=hround(2.5u-.5stem); y2-.5stem=-oo;
  312. if classic_serif:
  313.   top y1=h; pos1(stem,0);
  314.   sloped_serif.l(1,2,a,1/3,jut,serif_drop);
  315. else:
  316.   hook_in(0,a,1);  % opening hook
  317. fi
  318. filldraw circ_stroke z2e--z1e;  % left stem
  319. x4+.5stem=hround(w-2.5u+.5stem); x5=x4-.25u; ital_arch(2,3,4);  % arch
  320. x7=w; empty_hook_out(5,6,7)(skewed);  % closing hook
  321. filldraw stroke z4e{down}..{-u,-x_height}z5e;  % right stem
  322. %
  323. % j stroke
  324.  pickup tiny.nib; pos8(vair,-90); pos9(hair,-180); pos10(flare,-180);
  325.  x8=.5[x5,x9r]; bot y8r=-d-oo; y9-.5flare=-.88d;
  326.  z9r=z10r; rt x10l=hround(x4r-3u+0.5stem); % floor .75u
  327.  (x,y8r)=whatever[z8l,z5l]; x8r:=max(x,.5[x9r,x8]);
  328.  filldraw stroke z5e{down}...z8e{left};  bulb(8,9,10); % arc and bulb
  329. math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#);
  330. penlabels(0,a,1,2,3,4,5,6,7,8,9,10); endchar;
  331.  
  332. dcchar "Italic letter long Hungarian umlaut o";
  333. beginchar(oct"256",9u#,x_height#+acc_height#,0);
  334. italcorr .7x_height#*slant+.5curve#-u# if math_fitting:-.5u# fi;
  335. adjust_fit(0,0); pickup fine.nib;
  336. pos1(vair,90); pos2(curve,180); pos3(vair,270); pos4(curve,360);
  337. x1=x3=.5w; lft x2r=hround(1.5u-.5curve); x4=w-x2;
  338. top y1r=x_height+oo; y2=y4=.5[y1,y3]; bot y3r=-oo;
  339. filldraw stroke pulled_arc.e(1,2) & pulled_arc.e(2,3)
  340.  & pulled_arc.e(3,4) & pulled_arc.e(4,1); % bowl
  341. %the accent
  342. lowercase_humlaut(5,6,7,8);
  343. math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
  344. penlabels(1,2,3,4,7,8); endchar;
  345.  
  346. dcchar "Italic letter acute r";
  347. beginchar(oct"257",5.5u#+max(1.75u#,flare#),x_height#+acc_height#,0);
  348. italcorr x_height#*slant;
  349. adjust_fit(if monospace:.25u#,.5u# else: 0,0 fi); pickup fine.nib;
  350. x0=0; x2=x3; pos3(stem,0); lft x3l=hround(2.5u-.5stem); y3-.5stem=-oo;
  351. if classic_serif:
  352.   pos2(stem,0);
  353.   y2=1/4x_height; % dito
  354.   x8=x2; pos8(stem,0); top y8=h;
  355.   sloped_serif.l(8,3,c,1/3,jut,serif_drop);
  356.   filldraw circ_stroke z8e--z3e;  % left stem
  357. else:
  358.   hook_in(0,1,2);  % opening hook
  359.   filldraw circ_stroke z3e--z2e;  % left stem
  360. fi
  361. pos3'(hair,180); z3'=z3; pos4(vair,90); pos5(hair,0); pos6(flare,0);
  362. x4=w-.5u-max(1.75u,flare); rt x5r=hround(r-.5u); top y4r=x_height+oo;
  363. filldraw stroke z3'e{up}...z4e{right};  % link
  364. y6+.5flare=vround(bot y4l-.03x_height); bulb(4,5,6);  % bulb
  365. %the accent
  366. lowercase_acute(1/3(x1r-.5w),0,7,8);
  367. math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#-.5u#);
  368. penlabels(0,1,2,3,4,5,6,7,8); endchar;
  369.  
  370.  
  371. dcchar "Italic letter hachek (check) r";
  372. beginchar(oct"260",5.5u#+max(1.75u#,flare#),x_height#+acc_height#,0);
  373. italcorr x_height#*slant;
  374. adjust_fit(if monospace:.25u#,.5u# else: 0,0 fi); pickup fine.nib;
  375. x0=0; x2=x3; pos3(stem,0); lft x3l=hround(2.5u-.5stem); y3-.5stem=-oo;
  376. if classic_serif:
  377.   pos2(stem,0);
  378.   y2=1/4x_height; % dito
  379.   x8=x2; pos8(stem,0); top y8=h;
  380.   sloped_serif.l(8,3,c,1/3,jut,serif_drop);
  381.   filldraw circ_stroke z8e--z3e;  % left stem
  382. else:
  383.   hook_in(0,1,2);  % opening hook
  384.   filldraw circ_stroke z3e--z2e;  % left stem
  385. fi
  386. pos3'(hair,180); z3'=z3; pos4(vair,90); pos5(hair,0); pos6(flare,0);
  387. x4=w-.5u-max(1.75u,flare); rt x5r=hround(r-.5u); top y4r=x_height+oo;
  388. filldraw stroke z3'e{up}...z4e{right};  % link
  389. y6+.5flare=vround(bot y4l-.03x_height); bulb(4,5,6);  % bulb
  390. %the accent
  391. lowercase_hachek(x2r,0,7,8,9,10,11);
  392. math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#-.5u#);
  393. penlabels(0,1,2,3,4,5,6,7,8,9,10,11); endchar;
  394.  
  395.  
  396. dcchar "Italic letter acute s";
  397. beginchar(oct"261",5.25u#+max(1.75u#,flare#),x_height#+acc_height#,0);
  398. italcorr (acc_height#+x_height#)*slant-.5u#;
  399. adjust_fit(0,0); pickup fine.nib;
  400. numeric theta; theta=90-angle(40u,x_height); slope:=-h/40u;  % angle at middle
  401. pos2(vair,-90); pos0(max(fine.breadth,ess),theta); pos7(vair,-90);
  402. x2l=x0=x7=.5w; top y2l=x_height+oo; bot y7r=-oo;
  403. y0-.5ess=y7l+.55(y2r-y7l-ess);
  404. lft x3l=hround u-eps; rt x6r=hround(w-.5u)+eps;
  405. x3r-x3l=x6r-x6l=hround .5[vair,ess]-fine;
  406. ellipse_set(2l,3l,4l,0l); ellipse_set(2r,3r,4r,0r); y3=y3r;
  407. ellipse_set(7l,6l,5l,0l); ellipse_set(7r,6r,5r,0r); y6=y6r;
  408. interim superness:=more_super;
  409. filldraw stroke super_arc.e(2,3) & z3e{down}
  410.  ..z4e---z5e..z6e{down} & super_arc.e(6,7);  % main stroke
  411. pos1(hair,0); pos10(hround .75[hair,flare],0);
  412. pos2'(vair,90); z2'=z2;
  413. pos8(hair,-180); pos9(flare,-180);
  414. rt x10r=hround(w-u)+2eps; lft x9r=hround .5u-2eps;
  415. y10=.78x_height; y9=.25x_height;
  416. bulb(2',1,10); bulb(7,8,9);  % bulbs
  417. % the accent
  418. lowercase_acute(0,0,11,12);
  419. math_fit(0,ic#); penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12); endchar;
  420.  
  421. dcchar "Italic letter hachek s";
  422. beginchar(oct"262",5.25u#+max(1.75u#,flare#),x_height#+acc_height#,0);
  423. italcorr (acc_height#+x_height#)*slant-.5u#;
  424. adjust_fit(0,0); pickup fine.nib;
  425. numeric theta; theta=90-angle(40u,x_height); slope:=-h/40u;  % angle at middle
  426. pos2(vair,-90); pos0(max(fine.breadth,ess),theta); pos7(vair,-90);
  427. x2l=x0=x7=.5w; top y2l=x_height+oo; bot y7r=-oo;
  428. y0-.5ess=y7l+.55(y2r-y7l-ess);
  429. lft x3l=hround u-eps; rt x6r=hround(w-.5u)+eps;
  430. x3r-x3l=x6r-x6l=hround .5[vair,ess]-fine;
  431. ellipse_set(2l,3l,4l,0l); ellipse_set(2r,3r,4r,0r); y3=y3r;
  432. ellipse_set(7l,6l,5l,0l); ellipse_set(7r,6r,5r,0r); y6=y6r;
  433. interim superness:=more_super;
  434. filldraw stroke super_arc.e(2,3) & z3e{down}
  435.  ..z4e---z5e..z6e{down} & super_arc.e(6,7);  % main stroke
  436. pos1(hair,0); pos10(hround .75[hair,flare],0);
  437. pos2'(vair,90); z2'=z2;
  438. pos8(hair,-180); pos9(flare,-180);
  439. rt x10r=hround(w-u)+2eps; lft x9r=hround .5u-2eps;
  440. y10=.78x_height; y9=.25x_height;
  441. bulb(2',1,10); bulb(7,8,9);  % bulbs
  442. % the accent
  443. lowercase_hachek(.5w,0,11,12,13,14,15);
  444. math_fit(0,ic#); penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15); endchar;
  445.  
  446. dcchar "Italic letter cedilla s";
  447. beginchar(oct"263",5.25u#+max(1.75u#,flare#),x_height#,0.875desc_depth#);
  448. italcorr x_height#*slant-.5u#;
  449. adjust_fit(0,0); pickup fine.nib;
  450. numeric theta; theta=90-angle(40u,x_height); slope:=-h/40u;  % angle at middle
  451. pos2(vair,-90); pos0(max(fine.breadth,ess),theta); pos7(vair,-90);
  452. x2l=x0=x7=.5w; top y2l=x_height+oo; bot y7r=-oo;
  453. y0-.5ess=y7l+.55(y2r-y7l-ess);
  454. lft x3l=hround u-eps; rt x6r=hround(w-.5u)+eps;
  455. x3r-x3l=x6r-x6l=hround .5[vair,ess]-fine;
  456. ellipse_set(2l,3l,4l,0l); ellipse_set(2r,3r,4r,0r); y3=y3r;
  457. ellipse_set(7l,6l,5l,0l); ellipse_set(7r,6r,5r,0r); y6=y6r;
  458. interim superness:=more_super;
  459. filldraw stroke super_arc.e(2,3) & z3e{down}
  460.  ..z4e---z5e..z6e{down} & super_arc.e(6,7);  % main stroke
  461. pos1(hair,0); pos10(hround .75[hair,flare],0);
  462. pos2'(vair,90); z2'=z2;
  463. pos8(hair,-180); pos9(flare,-180);
  464. rt x10r=hround(w-u)+2eps; lft x9r=hround .5u-2eps; y10=.78h; y9=.25x_height;
  465. bulb(2',1,10); bulb(7,8,9);  % bulbs
  466. % the accent
  467. lowercase_cedilla(x7,0,11,12,13,14,15);
  468. math_fit(0,ic#); penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15); endchar;
  469.  
  470.  
  471. dcchar "Italic letter t with comma";
  472. beginchar(oct"264",5.5u#,min(asc_height#,10/7x_height#),0);
  473. italcorr max(1/3x_height#*slant+.5hair#+.5u#,x_height#*slant-.25u#);
  474. adjust_fit(if monospace:u#,u# else:0,0 fi); pickup fine.nib;
  475. pos1(stem,0); lft x1l=hround(2u-.5stem); y1+.5stem=h+oo;
  476. x2=x1; x4=w; hook_out(2,3,4);  % closing hook
  477. if classic_serif:
  478.    filldraw stroke z1e--z2e;  % stem
  479. else:
  480.    filldraw circ_stroke z1e--z2e;  % stem
  481. fi
  482. pickup crisp.nib; pos5(bar,90); pos6(bar,90);
  483. lft x5=hround-.75u; rt x6=hround(w-.75u); top y5r=top y6r=x_height;
  484. filldraw stroke z5e--z6e;  % crossbar
  485. %
  486. % the accent
  487. komma_one := 7;
  488. x[komma_one]=hround(w+0.5dot_size-2u);
  489. if asc_height>2x_height:
  490.    y[komma_one]=y6r+dot_size+0.4comma_depth+min(bar,.5dot_size);
  491. else:
  492.   y[komma_one]r=asc_height;
  493. fi
  494. comma([komma_one],ee,dot_size,.25u,0.4comma_depth);  % comma with increased jut
  495. math_fit(1.25u#-x_height#*slant,ic#); penlabels(1,2,3,4,5,6,7); endchar;
  496.  
  497. dcchar "Italic letter cedilla t";
  498. beginchar(oct"265",5.5u#,min(asc_height#,10/7x_height#),0.875desc_depth#);
  499. italcorr max(1/3x_height#*slant+.5hair#+.5u#,x_height#*slant-.25u#);
  500. adjust_fit(if monospace:u#,u# else:0,0 fi); pickup fine.nib;
  501. pos1(stem,0); lft x1l=hround(2u-.5stem); y1+.5stem=h+oo;
  502. x2=x1; x4=w; hook_out(2,3,4);  % closing hook
  503. if classic_serif:
  504.    filldraw stroke z1e--z2e;  % stem
  505. else:
  506.    filldraw circ_stroke z1e--z2e;  % stem
  507. fi
  508. pickup crisp.nib; pos5(bar,90); pos6(bar,90);
  509. lft x5=hround-.75u; rt x6=hround(w-.75u); top y5r=top y6r=x_height;
  510. filldraw stroke z5e--z6e;  % crossbar
  511. %
  512. % the accent
  513. lowercase_cedilla(x3,0,7,8,9,10,11);
  514. math_fit(1.25u#-x_height#*slant,ic#);
  515. penlabels(1,2,3,4,5,6,7,8,9,10,11); endchar;
  516.  
  517. dcchar "Italic long Hungarian umlaut u";
  518. beginchar(oct"266",9.5u#,x_height#+acc_height#,0);
  519. italcorr (acc_height#+x_height#)*slant+.5hair#+.5u#;
  520. adjust_fit(0,0); pickup fine.nib; interim superness:=more_super;
  521. if classic_serif:
  522.    x0=0; x2=x3; pos3(stem,-180); lft x3r=hround(2.5u-.5stem);
  523.    pos2(stem,0);
  524.    top y2=x_height;
  525. else:
  526.   x0=0; x2=x3+.25u; pos3(stem,-180); lft x3r=hround(2.5u-.5stem);
  527.   hook_in(0,1,2)(skewed);  % opening hook
  528. fi
  529. pos2'(stem,-180); z2'=z2;
  530. pos4(vair,-90); pos5(hair,0); x4=.5[x3,x5];
  531. pos6(stem,0); rt x6r=hround(w-2.5u+.5stem);
  532. x5=x6=x7; x9=w; hook_out(7,8,9);  % closing hook
  533. y3=.7[y4,y5]; bot y4r=-oo; y5=.57h; y6+.5stem=x_height;
  534. if classic_serif:
  535.   filldraw stroke z2
  536.    ...super_arc.e(3,4)...{up}z5e; % left stem and arc
  537. else:
  538.   filldraw stroke z2'e{-u,-x_height}
  539.    ...super_arc.e(3,4)...{up}z5e; % left stem and arc
  540. fi
  541. filldraw circ_stroke z6e--z7e;  % right stem
  542. if classic_serif: sloped_serif.l(2,3,a,1/3,jut,serif_drop); fi
  543. math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#);
  544. % the accent
  545. lowercase_humlaut(10,11,12,13);
  546. penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13); endchar;
  547.  
  548.  
  549. dcchar "Italic circle u";
  550. beginchar(oct"267",9.5u#,x_height#+acc_height#,0);
  551. italcorr 1/3x_height#*slant+.5hair#+.5u#;
  552. adjust_fit(0,0); pickup fine.nib; interim superness:=more_super;
  553. if classic_serif:
  554.    x0=0; x2=x3; pos3(stem,-180); lft x3r=hround(2.5u-.5stem);
  555.    pos2(stem,0);
  556.    top y2=x_height;
  557. else:
  558.   x0=0; x2=x3+.25u; pos3(stem,-180); lft x3r=hround(2.5u-.5stem);
  559.   hook_in(0,1,2)(skewed);  % opening hook
  560. fi
  561. pos2'(stem,-180); z2'=z2;
  562. pos4(vair,-90); pos5(hair,0); x4=.5[x3,x5];
  563. pos6(stem,0); rt x6r=hround(w-2.5u+.5stem);
  564. x5=x6=x7; x9=w; hook_out(7,8,9);  % closing hook
  565. y3=.7[y4,y5]; bot y4r=-oo; y5=.57x_height; y6+.5stem=x_height;
  566. if classic_serif:
  567.   filldraw stroke z2
  568.    ...super_arc.e(3,4)...{up}z5e; % left stem and arc
  569. else:
  570.   filldraw stroke z2'e{-u,-x_height}
  571.    ...super_arc.e(3,4)...{up}z5e; % left stem and arc
  572. fi
  573. filldraw circ_stroke z6e--z7e;  % right stem
  574. if classic_serif: sloped_serif.l(2,3,a,1/3,jut,serif_drop); fi
  575. math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#);
  576. % the accent
  577. lowercase_circle(.5w,(1/3[x_height,h]+apex_o),10,11,12,13);
  578. penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13); endchar;
  579.  
  580. dcchar "Italic letter umlaut y";
  581. beginchar(oct"270",8.5u#,x_height#+acc_height#,desc_depth#);
  582. italcorr x_height#*slant+.5stem#-u#;
  583. adjust_fit(0,0); pickup fine.nib; interim superness:=more_super;
  584. x0=0; x2=x3+.25u; pos3(stem,-180); lft x3r=hround(2.5u-.5stem);
  585. if classic_serif:
  586.   pos2(stem,0);
  587.   top y2=x_height;
  588. else:
  589.   hook_in(0,1,2)(skewed);  % opening hook
  590. fi
  591. pos2'(stem,-180); z2'=z2;
  592. pos4(vair,-90); pos5(hair,0); x4=.5[x3,x5];
  593. pos6(stem,0); rt x6r=hround(w-1.5u+.5stem);
  594. pos7(stem,0); pos8(vair,-90);
  595. y3=.7[y4,y5]; bot y4r=-oo; y5=.57x_height; y6+.5stem=x_height;
  596. y7=0; bot y8r=-d-oo; x5=x6=x7; x8=.5w;
  597. pos9(hair,-180); pos10(flare,-180); y9=-.5d;
  598. lft x9r=hround(2.75u-.5flare); bulb(8,9,10);  % bulb
  599. filldraw stroke z2'e{-u,-x_height}
  600.  ...super_arc.e(3,4)...{up}z5e; % left stem and arc
  601. filldraw circ_stroke z6e---z7e...{left}z8e;  % right stem and link
  602. if classic_serif: sloped_serif.l(2,3,a,1/3,jut,serif_drop); fi
  603. %the accent
  604. lowercase_umlaut(0,0,11,12,13,14);
  605. math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#-1/3x_height#*slant);
  606. penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14); endchar;
  607.  
  608. dcchar "Italic letter acute z";
  609. beginchar(oct"271",5.5u#+max(1.5u#,stem#),x_height#+acc_height#,0);
  610. italcorr x_height#*slant+.5hair#;
  611. adjust_fit(if monospace:.5u#,.5u# else: 0,0 fi); pickup fine.nib;
  612. pos1(hair,0); pos2(stem,-90); pos3(vair,-90); pos4(hair,0);
  613. lft x1l=hround(u-.5hair); x2=2.5u; x3=w-2u; rt x4r=hround(w-.5u);
  614. top y1=.78x_height; top y2l=top y4=x_height+oo; y3=.825x_height;
  615. pos5(hair,0); pos6(vair,-90); pos7(stem,-90); pos8(hair,0);
  616. x5=x1; x6=2.5u; x7=w-2u; x8+.5hair=hround(w+.5hair-eps);
  617. bot y5=bot y7r=-oo; y6=.175x_height; bot y8=.31x_height;
  618. pair p; p=(z4-z5) yscaled 2;
  619. filldraw stroke z1e{up}...z2e{right}..z3e{right}...{p}z4e;  % upper bar
  620. filldraw stroke z5e{p}...z6e{right}..{right}z7e...{up}z8e;  % lower bar
  621. filldraw stroke z5e{p}..{p}z4e;  % diagonal
  622. math_fit(0,1/3x_height#*slant+.5hair#+.5u#);
  623. %the accent
  624. lowercase_acute(0,0,9,10);
  625. penlabels(1,2,3,4,5,6,7,8,9,10); endchar;
  626.  
  627. dcchar "Italic letter hacheck (check) z";
  628. beginchar(oct"272",5.5u#+max(1.5u#,stem#),x_height#+acc_height#,0);
  629. italcorr x_height#*slant+.5hair#;
  630. adjust_fit(if monospace:.5u#,.5u# else: 0,0 fi); pickup fine.nib;
  631. pos1(hair,0); pos2(stem,-90); pos3(vair,-90); pos4(hair,0);
  632. lft x1l=hround(u-.5hair); x2=2.5u; x3=w-2u; rt x4r=hround(w-.5u);
  633. top y1=.78x_height; top y2l=top y4=x_height+oo; y3=.825x_height;
  634. pos5(hair,0); pos6(vair,-90); pos7(stem,-90); pos8(hair,0);
  635. x5=x1; x6=2.5u; x7=w-2u; x8+.5hair=hround(w+.5hair-eps);
  636. bot y5=bot y7r=-oo; y6=.175x_height; bot y8=.31x_height;
  637. pair p; p=(z4-z5) yscaled 2;
  638. filldraw stroke z1e{up}...z2e{right}..z3e{right}...{p}z4e;  % upper bar
  639. filldraw stroke z5e{p}...z6e{right}..{right}z7e...{up}z8e;  % lower bar
  640. filldraw stroke z5e{p}..{p}z4e;  % diagonal
  641. math_fit(0,1/3x_height#*slant+.5hair#+.5u#);
  642. %the accent
  643. lowercase_hachek(.5w,0,9,10,11,12,13);
  644. penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13); endchar;
  645.  
  646. dcchar "Italic letter dot z";
  647. beginchar(oct"273",5.5u#+max(1.5u#,stem#),x_height#+acc_height#,0);
  648. italcorr x_height#*slant+.5hair#;
  649. adjust_fit(if monospace:.5u#,.5u# else: 0,0 fi); pickup fine.nib;
  650. pos1(hair,0); pos2(stem,-90); pos3(vair,-90); pos4(hair,0);
  651. lft x1l=hround(u-.5hair); x2=2.5u; x3=w-2u; rt x4r=hround(w-.5u);
  652. top y1=.78x_height; top y2l=top y4=x_height+oo; y3=.825x_height;
  653. pos5(hair,0); pos6(vair,-90); pos7(stem,-90); pos8(hair,0);
  654. x5=x1; x6=2.5u; x7=w-2u; x8+.5hair=hround(w+.5hair-eps);
  655. bot y5=bot y7r=-oo; y6=.175x_height; bot y8=.31x_height;
  656. pair p; p=(z4-z5) yscaled 2;
  657. filldraw stroke z1e{up}...z2e{right}..z3e{right}...{p}z4e;  % upper bar
  658. filldraw stroke z5e{p}...z6e{right}..{right}z7e...{up}z8e;  % lower bar
  659. filldraw stroke z5e{p}..{p}z4e;  % diagonal
  660. math_fit(0,1/3x_height#*slant+.5hair#+.5u#);
  661. % the accent
  662. dot_one   := 9;
  663. dot_two   := 10;
  664. numeric dot_diam#; dot_diam#=max(dot_size#,cap_curve#);
  665. define_whole_blacker_pixels(dot_diam);
  666. pickup tiny.nib;
  667. pos[dot_one](dot_diam,0);
  668. pos[dot_two](dot_diam,90);
  669. x[dot_one]=x[dot_two]=.5w;
  670. top y[dot_two]r=min(asc_height,10/7x_height+.5dot_diam);
  671. if bot y[dot_two]l<x_height+o+slab:
  672.    y[dot_two]l:=min(y[dot_two]r-eps,acc_height+x_height+o+slab+.5tiny); fi
  673. y[dot_one]=.5[y[dot_two]l,y[dot_two]r];
  674. dot([dot_one],[dot_two]);  % dot
  675. penlabels(1,2,3,4,5,6,7,8,9,10); endchar;
  676.  
  677.  
  678. dcchar "Italic letter ij";
  679. beginchar(oct"274",10u#,min(asc_height#,10/7x_height#+.5flare#),desc_depth#);
  680. italcorr max(1/3x_height#*slant+.5hair#+.5u#,h#*slant+.5flare#-2u#);
  681. adjust_fit(0,0); pickup fine.nib;
  682. x0=0; x5=5u; x2=2.5u+.25u; x3=2.5u-.25u;
  683. if classic_serif:
  684.   hook_out(3,4,5)(skewed);  % hooks
  685.   top y2=x_height;
  686.   pos2(stem,0);
  687.   sloped_serif.l(2,3,a,1/3,jut,serif_drop);
  688. else:
  689.   hook_in(0,1,2)(skewed);
  690.   hook_out(3,4,5)(skewed);  % hooks
  691. fi
  692. filldraw stroke z2e--z3e;  % stem
  693. pos8(flare,0); pos9(flare,90);
  694. x8=2.5u if not monospace:-.4(h-x_height)*slant fi; top y9r=h+1;
  695. if classic_serif: else:
  696.  if bot y9l-top y1<slab: y9l:=min(y9r-eps,y1+fine+slab); fi
  697. fi
  698. x8=x9; y8=.5[y9l,y9r]; dot(8,9);  % dot
  699. %math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#);
  700. %penlabels(0,1,2,3,4,5,8,9); endchar;
  701. %
  702. %dcchar "Italic letter j";
  703. %beginchar("j",5u#,min(asc_height#,10/7x_height#+.5flare#),desc_depth#);
  704. %italcorr h#*slant+.5stem#-u#;
  705. %adjust_fit(if monospace:2u#,.5u# else: 0,0 fi);
  706. pickup fine.nib;
  707. x10=5u; x12=x13; pos13(stem,0); lft x13l=hround(w-1.5u-.5stem);
  708. if classic_serif:
  709.   pos14(vair,-90); pos15(hair,-180); pos16(flare,-180);
  710.   bot y13=-1/3d; bot y14r=-d-oo; y16-.5flare=-vround.9d;
  711.   top y12=x_height;
  712.   pos12(stem,0);
  713.   sloped_serif.l(12,13,b,1/3,jut,serif_drop);
  714. else:
  715.   hook_in(10,11,12);  % opening hook
  716.   pos14(vair,-90); pos15(hair,-180); pos16(flare,-180);
  717.   bot y13=-1/3d; bot y14r=-d-oo; y16-.5flare=-vround.9d;
  718. fi
  719. x14=5u+1/3(w-6u); lft x15r=min(hround 4.5u,lft x15r+x14-x15l-eps);
  720. filldraw stroke z12e---z13e...{left}z14e;  % stem and arc
  721. bulb(14,15,16);  % bulb
  722. pos18(flare,0); pos19(flare,90);
  723. rt x18r=rt x12r if not monospace:-.6(h-x_height)*slant fi; top y19r=h+1;
  724. if classic_serif: else:
  725.    if bot y19l-top y11<slab: y19l:=min(y19r-eps,y11+fine+slab); fi
  726. fi
  727. x18=x19; y18=.5[y19l,y19r]; dot(18,19);  % dot
  728. math_fit(desc_depth#*slant,x_height#*slant+.5stem#-u#);
  729. penlabels(0,1,2,3,4,5,6,8,9,10,11,12,13,14,15,16,17,18,19); endchar;
  730.  
  731. endinput;
  732.